add_executable(lrpcc_main ${CMAKE_CURRENT_LIST_DIR}/SourceFiles/lrpc_c.cpp)
# 编译静态库，暂不添加任何源码。
add_library(lrpc_c "")

# file(GLOB_RECURSE SRC_CPP_DIR_LIST "${CMAKE_CURRENT_LIST_DIR}/SourceFiles/*.cpp" "${CMAKE_CURRENT_LIST_DIR}/SourceFiles/*.c")
file(GLOB_RECURSE SRC_HPP_DIR_LIST "${CMAKE_CURRENT_LIST_DIR}/HeaderFiles/*.hpp" "${CMAKE_CURRENT_LIST_DIR}/HeaderFiles/*.h")

# message(STATUS "SRC_CPP_DIR_LIST = ${SRC_CPP_DIR_LIST}")
message(STATUS "SRC_HPP_DIR_LIST = ${SRC_HPP_DIR_LIST}")
# 随后用target_sources添加源码。
# 这种方式更好，因为可以更细粒度地访问权限。
# 例如对cpp文件就是PRIVATE，而hpp则是PUBLIC
target_sources(lrpc_c
        PRIVATE
        # 注：${CMAKE_CURRENT_LIST_DIR}代表当前的CMakeLists.txt文件所在的绝对路径。
        ${CMAKE_CURRENT_LIST_DIR}/SourceFiles/lsf.cpp
        PUBLIC
        ${SRC_HPP_DIR_LIST}
        )


# 增加包含文件目录
target_include_directories(lrpc_c
        PUBLIC
        ${CMAKE_CURRENT_LIST_DIR}/HeaderFiles
        )

target_link_libraries(lrpcc_main
        PRIVATE
        lrpc_c
        )